package cn.youyeku.zsxh.Utils;

import android.util.Base64;
import android.util.SparseArray;
import android.util.SparseBooleanArray;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by youye on 17-4-16.
 */

public class ConverUtils {

    public static <C> SparseArray<C> ListToSparse(List<C> list) {
        if (list == null) return null;
        SparseArray<C> SparseArray = new SparseArray<>();
        int len = list.size();
        for (int i = 0; i < len; i++)
            SparseArray.append(i,list.get(i));
        return SparseArray;
    }

    //统计数据 正确的数据是写入0 不正确的写入1
    public static String SparseBooleanArrayToString(SparseBooleanArray sparseBooleanArray) {

        int len = sparseBooleanArray.size();
       String  tmp="";
        for (int i = 0; i < len; i++)
        {
            if(i ==len-1){
                tmp +=((sparseBooleanArray.get(i)) ? 0: 1);
            }else {
                tmp +=((sparseBooleanArray.get(i)) ? 0 : 1)+",";
            }

        }
        return tmp;
    }

    public static int[] SparseBooleanArrayToIntArray(SparseBooleanArray sparseBooleanArray) {

        int len = sparseBooleanArray.size();
        int [] arr = new int[len];
        for (int i = 0; i < len; i++)
        {

            arr[i] =(sparseBooleanArray.get(i)) ? 1 : 0;
        }
        return arr;
    }

    public static <C> List<C> SparseToList(SparseArray<C> sparseArray) {
        if (sparseArray == null) return null;
        List<C> arrayList = new ArrayList<>();
        int len = sparseArray.size();
        for (int i = 0; i < len; i++)
            arrayList.add(sparseArray.valueAt(i));
        return arrayList;
    }

    public static String Base64ToString(String text) {
        return new String(Base64.decode(text, Base64.DEFAULT));
    }
}
